在ubuntu上配置tensorflow 1.7+CUDA踩过的坑
在ubuntu上配置tensorflow 1.7+CUDA踩过的坑
tensorflow1.6+CUDA9.0+cuDNN7.0整个环境在windows下正常工作。因为需要就要把项目整到ubuntu上面跑测试,于是就调到坑里面去了,先说一下版本
ubuntu 14 64位
python3.4
tensorflow1.7 GPU
网上查了一下说tensorflow1.7支持CUDA9.0,于是就下载了CUDA9.0开始安装,但是死活装不上,不管是下载local还是network的installer,总是报错,查了一下发现是没有装驱动于是下载384的驱动,安装好了之后,装到最后又挂了,根据抛出的错误找到英伟达的论坛,里面的官方回答是CUDA9.0与CUDA9.1必须安装387.x的驱动,于是有装上,在终端执行下面命令行:
终于把CUDA装好了,然后下载cuDNN7.0,通过下面命令安装即可,(注意顺序很重要)
sudo dpkg -i libcudnn77.0.3.11-1+cuda9.0amd64.deb
sudo dpkg -i libcudnn7-dev7.0.3.11-1+cuda9.0amd64.deb
sudo dpkg -i libcudnn7-doc7.0.3.11-1+cuda9.0amd64.deb
安装好了之后CUDA9.0+cuDNN7.0就在ubuntu14上安装好了。可以支持tensorflow 1.7的代码运行与测试了。但是当时第一次配置的时候,我以为tensorflow1.7官方release支持CUDA9.1,所以刚开始装了CUDA9.1,然后就悲剧了,各种命令卸载,最终直接暴力删文件夹,再命令autoremove终于把CUDA9.1干掉了。由于是第一次整ubuntu的配置,各种查资料查命令,掉了好几次坑,总结如下:
tensorflow 1.6/tensorflow1.7支持CUDA9.0+cuDNN7.0
安装CUDA失败,记得首先检查驱动安装以及驱动版本号,CUDA9.0对应的驱动387.x
卸载CUDA,一定要暴力,不然没法玩!
在安装tensorflow之前,一定记得检查一下python版本,把默认python设置为python3.x
常见错误:
错误:ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory
问题:
找不到cuda9.0的版本。
原因:
是因为装了不匹配的cuda9.1的版本,所以只有卸载重装。
ERROR:
You appear to be running an X server; please exit X before installing. For further details, please see the section INSTALLING THE NVIDIA DRIVER in the README available on the Linux driver download page at www.nvidia.com
问题与原因:
没有关闭X-Server,必须关闭,然后切换到命令行运行方式下,在图形界面下会一直有这个问题!坑死人!
使用tensorflow GPU支持的时候,多个GPU通过制定使用一个GPU运行时候,尽量要通过设置soft的方式执行,不然在复杂的操作中容易掉坑里面去,soft的方式如下:
log_device_placement = True
config = tf.ConfigProto(log_device_placement=log_device_placement)
with tf.Session(config=config) as sess:
# do something
# ops
硬来的方式如下:
with tf.device('/gpu:0'):
a = tf.placeholder(tf.float32, [10000, 10000])
b = tf.placeholder(tf.float32, [10000, 10000])
# Compute A^n and B^n and store results in c1
c1.append(matpow(a, n))
c1.append(matpow(b, n))
设置好GPU支持,就可以在ubuntu下开始运行程序测试了。最后上一张图看看运行时候的效果:
NVIDIA cuda下载地址
https://developer.nvidia.com/accelerated-computing-toolkit
https://developer.nvidia.com/cudnn
https://developer.nvidia.com/cuda-downloads
求木之长者,必固其根本;
欲流之远者,必浚其泉源!
关注【OpenCV学堂】
长按或者扫码下面二维码即可关注
欢迎关注一个只分享干货的公众号!
少一丝烦躁,多一份努力!